from django.db import models
'''
定义Django模型，用于管理商品信息
Types模型，存储商品的分类信息，采用的是两级分类（一级分类和二级分类）
CommodityInfo模型，存储商品的详细信息，包括名称、规格、价格、库存等
自动记录商品的上架日期（auto_now_add=True）
支持商品主图和介绍图片的上传
'''
# Create your models here.
class Types(models.Model):
    #自增主键
    id=models.AutoField(primary_key=True)
    #一级分类标签
    firsts=models.CharField('一级分类',max_length=100)
    #二级分类标签
    seconds=models.CharField('二级分类',max_length=100)
    def __str__(self):
        #字符串表示方法，返回id的字符串形式
        return str(self.id)
    class Meta:
        #元数据类，用于定义模型在Admin界面的显示名称
        verbose_name='商品类型'
        verbose_name_plural=verbose_name

class CommodityInfo(models.Model):
    id=models.AutoField(primary_key=True)
    name=models.CharField('商品名称',max_length=100)
    sezes=models.CharField('颜色规格',max_length=100)
    types=models.CharField('商品类型',max_length=100)
    price=models.FloatField("商品价格")
    discount=models.FloatField("折后价格")
    stock=models.IntegerField('存货数量')
    sold=models.IntegerField('已售数量')
    likes=models.IntegerField('收藏数量')
    create=models.DateTimeField('上架日期',auto_now_add=True)
    image=models.FileField("商品主图",upload_to=r'imgs')
    details=models.FileField("商品介绍",upload_to=r'details')
    def __str__(self):
        return str(self.id)
    class Meta:
        verbose_name='商品信息'
        verbose_name_plural=verbose_name

'''
通过已有数据库反向生成models
python manage.py inspectdb > app/models.py
'''